로딩 중이에요... 🐣
[코담]
웹개발·실전 프로젝트·AI까지, 파이썬·장고의 모든것을 담아낸 강의와 개발 노트
5 배포하기 | ✅ 저자: 이유정(박사)
eb create airest-dev \ # 환경 이름: airest-dev
--vpc.id vpc-078a54... \
# VPC ID: 사용할 가상 사설 클라우드 네트워크
--vpc.securitygroups sg-0fa6d2... \
# 보안 그룹 ID: EC2 인스턴스에 적용될 방화벽 규칙
--vpc.ec2subnets subnet-0aef...,subnet-0c9149f...,subnet-012c0742f...,subnet-075377c22... \
# 퍼블릭 서브넷 ID 목록: EC2 인스턴스를 배치할 서브넷들
--vpc.elbpublic \
# 퍼블릭 로드밸런서 사용 여부: 인터넷에서 접근 가능하도록 설정
--vpc.publicip \
# 퍼블릭 IP 할당 여부: EC2 인스턴스에 공인 IP 부여
--envvars \
DB_NAME=restaurant_db,\
# RDS 데이터베이스 이름
DB_USER=admin,\ # RDS 데이터베이스 사용자 이름
DB_PASSWORD=bKkiQMw0OAE...,\ # RDS 사용자 비밀번호
DB_HOST=airest-db.cfwgaqsu2fpk.ap-northeast-2.rds.amazonaws.com,\ # RDS 호스트 주소 (엔드포인트)
S3_BUCKET=airest-dev,\ # S3 버킷 이름 (static, media 저장용)
S3_REGION=ap-northeast-2,\ # S3 버킷이 위치한 AWS 리전
S3_CUSTOM_DOMAIN=airest-dev.s3.ap-northeast-2.amazonaws.com,\
# S3 정적 호스팅 도메인 (CloudFront 또는 직접 사용 가능)
DEBUG=False,\ # Django의 디버그 모드 설정 (False = 배포 환경)
ALLOWED_HOSTS=.elasticbeanstalk.com,\
# Django에서 허용할 호스트 도메인
AWS_ACCESS_KEY_ID=AKIA2...,\
# IAM 사용자의 Access Key ID (AWS 서비스 접근용)
AWS_SECRET_ACCESS_KEY=6e5ei9acVpcPf39D2...
# IAM 사용자의 Secret Access Key (기밀)
만약 환경 생성중 배포에서 실패하면 삭제하고 다시 시도해야 합니다.
eb terminate airest-dev
그리고 환경생성을 다시 시도합니다.
EB CLI 상태 출력
eb list
# 확인가능 * airest-dev
초기 코드 배포
eb deploy airest-dev # (Elastic Beanstalk 환경(환경 이름))
배포 상태·헬스 체크
eb status airest-dev
eb health airest-dev
앱 열어보기 & 기본 기능 테스트
eb open airest-dev
마이그레이션·정적 파일 수집 확인 SSH 접속
eb ssh airest-dev
source /var/app/venv/*/bin/activate
cd /var/app/current
# 마이그레이션 실행
python manage.py migrate --noinput
# 슈퍼유저 생성
python manage.py createsuperuser
# 프롬프트가 나올 때 사용자명·이메일·비밀번호 입력
브라우저에 잘 배포되었는지 자신의 도메인으로 확인합니다.